package edu.zut.cs.software.propertymanagement.maintain.web.spring.controller;
import java.util.List;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.CrossOrigin;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.view.json.MappingJackson2JsonView;


import edu.zut.cs.software.base.web.spring.controller.GenericController;
import edu.zut.cs.software.propertymanagement.maintain.domain.Project;
import edu.zut.cs.software.propertymanagement.maintain.service.ProjectManager;


@Controller
@CrossOrigin(origins = "*")

//拦截含有favorite的url并处理
@RequestMapping("/maintain") 
public class ProjectController extends GenericController<Project, Long,ProjectManager> {
	ProjectManager projectManager;

	/*
	 * 部署成功后，在浏览器中输入url
	 * http://localhost:8080/universalStore-web/${1.}/${2.value值}
	 * 例子:http://localhost:8080/universalStore-web/surveillance/index.html
	*/
	@RequestMapping(value="/index.html" ,method=RequestMethod.GET)//2.
	public ModelAndView index() {
		ModelAndView mv = new ModelAndView();
		MappingJackson2JsonView jsonView = new MappingJackson2JsonView();
		List<Project> maintainList = projectManager.findAll(); 
		//与WEB-INF/pages中视图地址保持一致
		mv.setViewName("maintain/maintain");
		mv.setView(jsonView);
		mv.addObject("maintainList",maintainList);
		return mv;
	}

	@Autowired
	public void setSurveillanceManager(ProjectManager projectManager) {
		this.projectManager = projectManager;
		this.manager = this.projectManager;
	}
}
